//
//@File    :	8.5_cubes.cpp
//@Time    :	2021/08/14 22:10:36
//@Auther  :	Sun Sheng
//@Contact :	970340843@qq.com
//@Desc    :	regular and reference arguments
//

//使用基本数值类型,应采用按值传递, 而不是按引用传递
//当数据较大时(如结构和类),引用参数将很有用

//只使用传递给函数的信息,而不对这些信息进行修改,同时又想使用引用,应当使用常量引用
//double refcube(const double &ra);
#include <iostream>

using namespace std;
double cube(double a);
double refcube(double &ra);
int main()
{
    double x = 3.0;

    cout << cube(x);
    cout << " = cube of " << x << endl;
    cout << refcube(x);
    cout << " = cube of " << x << endl;
    system("pause");
    return 0;
}
double cube(double a)
{
    a *= a * a;
    return a;
}
double refcube(double &ra)
{
    ra *= ra * ra;
    return ra;
}